package com.ys.controller.web.business;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.ys.entity.business.TpHolidaySet;
import com.ys.service.business.TpHolidaySetService;
import com.ys.vo.LayuiTableVoJA;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;

@Controller
@RequestMapping("/web/business/tpHolidaySet")
public class WebHolidaySetController {

	private static Long MENU_ID = 46L;

	@Autowired
	private TpHolidaySetService tpHolidaySetService;
	/*
	 * 获取假期设置数据
	 */
	@PostMapping("/getHolidaySetList")
	@ResponseBody
	public LayuiTableVoJA getAnalysisList(Model model, HttpServletRequest request, HttpServletResponse response,
										  @ModelAttribute TpHolidaySet cond,
										  String conditions
	){
		List<TpHolidaySet> resList = new TpHolidaySet()
				.where("A.SetDate IS NOT NULL")
				.setOrderby("A.SetDate desc")
				.queryList();
		LayuiTableVoJA tableVoJA = new LayuiTableVoJA();
		JSONArray jsonArray = JSONArray.parseArray(JSON.toJSONString(resList));
		tableVoJA.setData(jsonArray);
		tableVoJA.setMsg("成功获取假期数据");
		tableVoJA.setCode(0);
		return tableVoJA;
	}

	/*
	 * 假期设置
	 */
	@PostMapping("/setHolidaySetMsg")
	@ResponseBody
	public LayuiTableVoJA setHolidaySetMsg(Model model, HttpServletRequest request, HttpServletResponse response,
										   @RequestParam Map<String, Object> params
	){
		//时间格式
		String time = params.get("setDate")+ " 00:00:00.000";
		//查询表中是否存在数据
		List<TpHolidaySet> hasSet = new TpHolidaySet()
				.where("A.SetDate = CONVERT(datetime, '"+ time +"', 21)" )
				.queryList();
		long result = 0;
		if(hasSet!=null && hasSet.size()>0){//存在，修改
			params.put("id",hasSet.get(0).getId());
			result = tpHolidaySetService.edit(params);
		}else {//不存在，新增
			result = tpHolidaySetService.add(params);
		}
		LayuiTableVoJA tableVoJA = new LayuiTableVoJA();
		if(result>0){
			tableVoJA.setMsg(result+"");
			tableVoJA.setCode(0);
		}else {
			tableVoJA.setMsg("假期设置失败，请稍后再试！");
			tableVoJA.setCode(1);
		}

		return tableVoJA;
	}
}



